<!DOCTYPE html>
<html>
<body>
<template id="target-template">
  <svg width="0" height="0">
    <text class="target">123</text>
  </svg>
</template>
<script src="../svg-attribute-interpolation/resources/interpolation-test.js"></script>
<script>
'use strict';
assertAttributeInterpolation({
  property: 'dx',
  underlying: '2',
  from: '-1',
  fromComposite: 'add',
  to: '4',
  toComposite: 'add'
}, [
  {at: -0.4, is: '-1'},
  {at: 0, is: '1'},
  {at: 0.2, is: '2'},
  {at: 0.6, is: '4'},
  {at: 1, is: '6'},
  {at: 1.4, is: '8'},
]);
assertAttributeInterpolation({
  property: 'dy',
  underlying: '2 2',
  from: '-1 -4',
  fromComposite: 'add',
  to: '4 -14',
  toComposite: 'add'
}, [
  {at: -0.4, is: '-1 2'},
  {at: 0, is: '1 -2'},
  {at: 0.2, is: '2 -4'},
  {at: 0.6, is: '4 -8'},
  {at: 1, is: '6 -12'},
  {at: 1.4, is: '8 -16'},
]);

assertAttributeInterpolation({
  property: 'dx',
  underlying: '2',
  from: '1',
  fromComposite: 'replace',
  to: '4',
  toComposite: 'add'
}, [
  {at: -0.4, is: '-1'},
  {at: 0, is: '1'},
  {at: 0.2, is: '2'},
  {at: 0.6, is: '4'},
  {at: 1, is: '6'},
  {at: 1.4, is: '8'},
]);
assertAttributeInterpolation({
  property: 'dy',
  underlying: '2 2',
  from: '1 -2',
  fromComposite: 'replace',
  to: '4 -14',
  toComposite: 'add'
}, [
  {at: -0.4, is: '-1 2'},
  {at: 0, is: '1 -2'},
  {at: 0.2, is: '2 -4'},
  {at: 0.6, is: '4 -8'},
  {at: 1, is: '6 -12'},
  {at: 1.4, is: '8 -16'},
]);

assertAttributeInterpolation({
  property: 'dx',
  underlying: '1',
  from: neutralKeyframe,
  to: '6',
  toComposite: 'replace'
}, [
  {at: -0.4, is: '-1'},
  {at: 0, is: '1'},
  {at: 0.2, is: '2'},
  {at: 0.6, is: '4'},
  {at: 1, is: '6'},
  {at: 1.4, is: '8'},
]);
assertAttributeInterpolation({
  property: 'dy',
  underlying: '1 -2',
  from: neutralKeyframe,
  to: '6 -12',
  toComposite: 'replace'
}, [
  {at: -0.4, is: '-1 2'},
  {at: 0, is: '1 -2'},
  {at: 0.2, is: '2 -4'},
  {at: 0.6, is: '4 -8'},
  {at: 1, is: '6 -12'},
  {at: 1.4, is: '8 -16'},
]);

assertAttributeInterpolation({
  property: 'dx',
  underlying: '1',
  from: '2 3',
  fromComposite: 'add',
  to: '4 5 6',
  toComposite: 'add'
}, [
  {at: -0.4, is: '2 3'},
  {at: 0, is: '2 3'},
  {at: 0.2, is: '2 3'},
  {at: 0.6, is: '4 5 6'},
  {at: 1, is: '4 5 6'},
  {at: 1.4, is: '4 5 6'},
]);
assertAttributeInterpolation({
  property: 'dy',
  underlying: '1 2',
  from: '3',
  fromComposite: 'add',
  to: '4 5 6',
  toComposite: 'add'
}, [
  {at: -0.4, is: '3'},
  {at: 0, is: '3'},
  {at: 0.2, is: '3'},
  {at: 0.6, is: '4 5 6'},
  {at: 1, is: '4 5 6'},
  {at: 1.4, is: '4 5 6'},
]);
</script>
</body>
</html>
